<Query Kind="Statements">
  <NuGetReference>SharpSvn</NuGetReference>
  <Namespace>System.Net</Namespace>
  <Namespace>SharpSvn</Namespace>
  <Namespace>System.Collections.ObjectModel</Namespace>
</Query>

using SvnClient client = new SvnClient();
NetworkCredential _credential = new NetworkCredential("Administrator", "sicont_server");
client.Authentication.Clear();
client.Authentication.DefaultCredentials = _credential;
client.Authentication.SslServerTrustHandlers += (sender, e) =>
{
    e.AcceptedFailures = e.Failures;
    e.Save = true;
};

// Note: 远程目录
SvnUriTarget _remote = new SvnUriTarget("https://vc2000/svn/TestNew/2025_客户1_项目1");

// Note: 本地目录
string _root = @"C:\Users\zeros\Downloads\2025年6月12日项目3";

// Note: 检出
//client.CheckOut(_remote, _root, new() { Depth = SvnDepth.Infinity });

// Note: 排除文件夹
//client.Update(Path.Combine(_root, "子目录"), new() {Depth = SvnDepth.Exclude, KeepDepth = true});

// note: 增加文件夹
//client.Update(Path.Combine(_root, "子目录"), new() {Depth = SvnDepth.Infinity});

//SvnWorkingCopyClient _workspace_client = new();
//SvnWorkingCopyEntriesArgs _args = new SvnWorkingCopyEntriesArgs();
//_args.RetrieveHidden = true;
//_workspace_client.GetState(_root, out var _result);
//_result.Dump();

SvnInfoArgs _args = new() { Depth = SvnDepth.Infinity };
client.GetInfo(new SvnPathTarget(_root), _args, out var _list);
//_list.Where(x => x.Depth is SvnDepth.Exclude).Select(x => Path.GetRelativePath(_root, x.Path)).Dump();
_list.Dump();